package com.iplatform.file.function.meta.vo;

import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;

/**
 * meta_field
 * @author HENG
 *
 */
public class MetaFieldVo implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = -492863574463000185L;

	@ApiModelProperty(value = "唯一主键id")
	private String id;
	
	@ApiModelProperty(value = "字段名称")
	private String code;
	
	@ApiModelProperty(value = "字段名称")
	private String dataIndex;
	
	@ApiModelProperty(value = "字段来源id")
	private String sourceFieldId;
	
	@ApiModelProperty(value = "字段注释")
	private String name;
	
	@ApiModelProperty(value = "字段类型")
	private String columnType;
	
	@ApiModelProperty(value = "字段长度")
	private String fieldSize;
	
	@ApiModelProperty(value = "字段精度")
	private String digits;
	
	@ApiModelProperty(value = "是否为空")
	private String nullAble;
	
	@ApiModelProperty(value = "外键对应表的字段")
	private String foreignKeyField;
	
	@ApiModelProperty(value = "排序")
	private Integer order;
	
	@ApiModelProperty(value = "别名")
	private String alias;
	
	@ApiModelProperty(value = "表名")
	private String tableCode;
	
	@ApiModelProperty(value = "是否选中")
	private String isChecked;
	
	@ApiModelProperty(value = "字段类型，三大类的类型")
	private String roleType;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public String getDataIndex() {
		return dataIndex;
	}

	public void setDataIndex(String dataIndex) {
		this.dataIndex = dataIndex;
	}

	public String getSourceFieldId() {
		return sourceFieldId;
	}

	public void setSourceFieldId(String sourceFieldId) {
		this.sourceFieldId = sourceFieldId;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getColumnType() {
		return columnType;
	}

	public void setColumnType(String columnType) {
		this.columnType = columnType;
	}

	public String getFieldSize() {
		return fieldSize;
	}

	public void setFieldSize(String fieldSize) {
		this.fieldSize = fieldSize;
	}

	public String getDigits() {
		return digits;
	}

	public void setDigits(String digits) {
		this.digits = digits;
	}

	public String getNullAble() {
		return nullAble;
	}

	public void setNullAble(String nullAble) {
		this.nullAble = nullAble;
	}

	public String getForeignKeyField() {
		return foreignKeyField;
	}

	public void setForeignKeyField(String foreignKeyField) {
		this.foreignKeyField = foreignKeyField;
	}

	public Integer getOrder() {
		return order;
	}

	public void setOrder(Integer order) {
		this.order = order;
	}

	public String getAlias() {
		return alias;
	}

	public void setAlias(String alias) {
		this.alias = alias;
	}

	public String getTableCode() {
		return tableCode;
	}

	public void setTableCode(String tableCode) {
		this.tableCode = tableCode;
	}

	public String getIsChecked() {
		return isChecked;
	}

	public void setIsChecked(String isChecked) {
		this.isChecked = isChecked;
	}

	public String getRoleType() {
		return roleType;
	}

	public void setRoleType(String roleType) {
		this.roleType = roleType;
	}

	@Override
	protected MetaFieldVo clone() throws CloneNotSupportedException {
		MetaFieldVo o = null;
	    try {
	      o = (MetaFieldVo) super.clone();
	    } catch (CloneNotSupportedException e) {
			System.out.println(e.toString());
	    }
	    return o;
	}

	@Override
	public String toString() {
		return "MetaFieldVo [id=" + id + ", code=" + code + ", dataIndex=" + dataIndex + ", sourceFieldId="
				+ sourceFieldId + ", name=" + name + ", columnType=" + columnType + ", fieldSize=" + fieldSize
				+ ", digits=" + digits + ", nullAble=" + nullAble + ", foreignKeyField=" + foreignKeyField + ", order="
				+ order + ", alias=" + alias + ", tableCode=" + tableCode + ", isChecked=" + isChecked + ", roleType="
				+ roleType + "]";
	}

	
	

}
